"""
@Author : 合肥一元数智教育科技有限公司
@Date :  2025/6/3 10:47
@Description :  装饰器的使用
一个函数是否可以被多个装饰器修饰？   可以
如果可以，那么多个装饰器的执行顺序是什么样的
先执行靠近目标函数的装饰器   由内向外执行
"""
"""
需求:
  1. 将show_info返回的字符串做加粗和倾斜的处理   <b></b>   <i></i>   i  

装饰器：
  1.  实现文本的加粗
  2.  实现文本的倾斜 
"""

# 加粗处理 装饰器
def make_b(fn):
    def inner():
        result = '<b>' + fn() + '</b>'
        return result

    return inner


# 倾斜处理 装饰器
def make_i(fn):
    def inner():
        result = '<i>' + fn() + '</i>'
        return result

    return inner


# 目标函数  加粗 倾斜
@make_b  # shw_info = make_b(show_info)   #  make_b inner
@make_i  # show_info = make_i(show_info)   # make_i inner
def show_info():
    return "hello python"


if __name__ == '__main__':
    result = show_info()
    print(result)
